44 research outputs found

    A Julia package for bilevel optimization problems

    Get PDF
    Mathematical optimization is the discipline dealing with the determination of the best (or almost best) decision with respect to a specific cost function and to a set of constraints on the decision. Bilevel optimization is a class of mathematical optimization problems with the optimality conditions of a lower-level problem embedded in the constraints. BilevelOptimization.jl is a toolbox built on top of the JuMP.jl ecosystem for mathematical optimization (Dunning, Huchette, & Lubin, 2017). Bilevel optimization is used to tackle various problems in areas such as power systems, security applications, network design or market equilibria. See Dempe (2018) for an overview of applications and recent formulations and theoretical progress. The computation of an optimal solution to a bilevel problem is in general hard. Even with all the constraints and the objectives at the two levels being linear, the resulting problem is non-convex and NP-hard, with a possibly disjoint feasible set. Optimization practitioners often rely on problem-specific properties and modeling techniques or heuristics. The goal of this package is to offer a both flexible model of a general class of bilevel problems and a solver which is compatible with the JuMP workflow

    Modèles biniveaux pour la réponse de la demande dans les réseaux électriques intelligents

    Get PDF
    This thesis focuses on bilevel optimization, some variants, and an application to optimal price-setting in smart power grids.Bilevel optimization problems are a special subclass of constrained mathematical optimization problems where another problem, the lower level is embedded in the constraints.We consider their application to the optimal pricing of a Time-and-Level-of-Use Demand Response program, allowing an electricity supplier to leverage the flexibility of users through an economic incentive.A generalized form of bilevel optimization is also proposed where the lower level may pick a solution that is not optimal as typically assumed but near-optimal, that is feasible and within a fixed tolerance from an optimal solution.Solving this variant of bilevel optimization requires anticipation of the deviation from optimality and a guarantee that a solution remains feasible even with this deviation.Cette thèse étudie l'optimisation bi-niveau, certaines variantes et une application à la tarification dans les réseaux électriques intelligents.Les problèmes d'optimisation bi-niveaux sont une sous-catégorie de problèmes d'optimisation mathématique contrainte où un deuxième problème ou deuxième niveau estprésent dans les contraintes.Nous étudions leur application à un tariff variable en temps et en niveau de consommation, permettant à un fournisseur d'énergie d'exploiter la flexibilité de consommateurs par des incitations économiques.Une généralisation des problèmes bi-niveaux est également proposée, dans laquelle le deuxième niveau peut sélectionner une solution qui n'est pas optimale contrairement au modèle bi-niveau classique mais quasi-optimale.Résoudre cette variante de problèmes bi-niveaux demande l'anticipation de cette déviation de la solution de deuxième niveau de l'optimalité et garantit qu'une solution au problème bi-niveau sera réalisable malgré cette déviation

    Bilevel models for demand response in smart grids

    Get PDF
    RÉSUMÉ: La thèse porte sur les modèles d'optimisation mathématique biniveau et leurs applications à la réponse de la demande dans les réseaux électriques. L'augmentation de la production d'énergie renouvelable et l'apparition de nouveaux acteurs ont complexité les opérations et décisions dans les réseaux électriques. La nature aléatoire et distribuée de la génération solaire et éolienne entraîne un besoin d'ajustement de la production conventionnelle à la demande nette, correspondant à la demande après prise en compte de la production renouvelable. La réponse de la demande est une des solutions utilisées pour faire face à ces nouveaux besoins des réseaux électriques. Au lieu d'étudier l'adaptation de la production à la charge, son principe est d'exploiter la �exibilité d'une partie de la consommation, ajustant ainsi la courbe de demande au cours du temps. Dans la première partie de cette thèse, nous étudions un système de réponse de la demande par prix dynamique, TLOU. Dans ce système, un usager réserve une capacité pour une période donnée, et paie un prix dépendant du dépassement de sa capacité par la consommation sur la période donnée. Nous étudions les propriétés de ce système de tari�cation, en particulier du point de vue du fournisseur déterminant les paramètres de prix. L'interaction entre le fournisseur et les usagers est modélisée comme un jeu de Stackelberg ou meneur-suiveur qui est résolu par une approche d'optimisation mathématique biniveau. Les problèmes d'optimisation biniveau sont caractérisés par un problème d'optimisation imbriqué dans les contraintes d'un autre problème d'optimisation. Leurs champs d'applications incluent les problèmes de conception en ingénierie, les modèles économiques, les réseaux électriques ou encore la sûreté des systèmes. Dans la deuxième partie de la thèse, une formulation du problème biniveau est proposée dans laquelle le deuxième niveau n'est plus nécessairement résolu exactement, mais peut dévier de son optimum d'une quantité limitée. Nous développons une formulation biniveau robuste à la quasi-optimalité (NORBiP) dans laquelle le premier niveau s'assure de trouver une solution dont la faisabilité est garantie pour l'ensemble des solutions quasi optimales du deuxième niveau. Ce modèle introduit une notion de robustesse spéci�que à l'optimisation multiniveau. Une reformulation à un seul niveau est développée dans le cas où le deuxième niveau est un problème d'optimisation convexe, basée sur la dualisation des contraintes de robustesse. Dans le cas où le deuxième niveau est un problème linéaire, une formulation étendue linéarisée est proposée. Bien que cette formulation robuste soit plus di�cile à résoudre que le problème biniveau classique, nous établissons des résultats sur sa complexité, démontrant que le problème robuste à la quasi-optimalité appartient à la même classe de complexité que le problème optimiste équivalent sous certaines hypothèses. En�n, des algorithmes exacts et heuristiques sont proposés pour accélérer la résolution de problèmes biniveaux robustes à la quasi-optimalité dans le cas linéaire.----------ABSTRACT: This thesis investigates mathematical optimization models with a bilevel structure and their application to price-based Demand Response in smart grids. The increasing penetration of renewable power generation has put power systems under higher tension. The stochastic and distributed nature of wind and solar generation increases the need for adjustment of the conventional production to the net demand, which corresponds to the demand minus the renewable generation. Demand Response as a means to this adjustment of demand and supply is receiving growing attention. Instead of achieving the adjustment thanks to generation units, it consists in leveraging the �exibility of a part of the demand, thus changing the aggregated demand curve in time. The �rst part of this thesis focuses on a Time-and-Level-of-Use Demand Response system based on a price of energy that depends on the time of consumption, but also on a capacity that is self-determined by each user of the program. This capacity is booked by the user for a speci�c time frame, and determines a limit for energy consumption. Several key properties of the pricing system are studied, focusing on the perspective of the supplier setting the pricing components. The supplier anticipates the decision of the customers to the prices they set, the sequential decision created by this situation is modelled as a Stackelberg or Leader-Follower game formulated as a bilevel optimization problem. Bilevel optimization problems embed the optimality condition of other optimization problems in their constraints. Their range of applications includes optimization for engineering, economics, power systems, or security games. The inherent computational di�culty of bilevel problems has motivated the development of customized algorithms for their resolution. In the second part of the contributions, a variant of the bilevel optimization problem is developed, where the upper level protects its feasibility against deviations of the lower-level solution from optimality. More speci�cally, this near-optimal robust model maintains the upper-level feasibility for any lower-level solution that is feasible and almost optimal for the lower-level. This model introduces a robustness notion that is speci�c to multilevel optimization. We derive a single-level closed-form reformulation when the lower level is a convex optimization problem and an extended formulation when it is linear. The near-optimal robust bilevel problem is a generalization of the optimistic bilevel problem and is in general harder to solve. Nonetheless, we obtain complexity results for the near-optimal robust bilevel problem, showing it belongs to the same complexity class as the optimistic problem under mild assumptions. Finally, we design exact and heuristic solution methods that signi�cantly improve the solution time of the extended formulation

    Complexity of near-optimal robust versions of multilevel optimization problems

    Get PDF
    Near-optimality robustness extends multilevel optimization with a limited deviation of a lower level from its optimal solution, anticipated by higher levels. We analyze the complexity of near-optimal robust multilevel problems, where near-optimal robustness is modelled through additional adversarial decision-makers. Near-optimal robust versions of multilevel problems are shown to remain in the same complexity class as the problem without near-optimality robustness under general conditions

    Branching via Cutting Plane Selection: Improving Hybrid Branching

    Full text link
    Cutting planes and branching are two of the most important algorithms for solving mixed-integer linear programs. For both algorithms, disjunctions play an important role, being used both as branching candidates and as the foundation for some cutting planes. We relate branching decisions and cutting planes to each other through the underlying disjunctions that they are based on, with a focus on Gomory mixed-integer cuts and their corresponding split disjunctions. We show that selecting branching decisions based on quality measures of Gomory mixed-integer cuts leads to relatively small branch-and-bound trees, and that the result improves when using cuts that more accurately represent the branching decisions. Finally, we show how the history of previously computed Gomory mixed-integer cuts can be used to improve the performance of the state-of-the-art hybrid branching rule of SCIP. Our results show a 4\% decrease in solve time, and an 8\% decrease in number of nodes over affected instances of MIPLIB 2017

    Flexible Differentiable Optimization via Model Transformations

    Full text link
    We introduce DiffOpt.jl, a Julia library to differentiate through the solution of optimization problems with respect to arbitrary parameters present in the objective and/or constraints. The library builds upon MathOptInterface, thus leveraging the rich ecosystem of solvers and composing well with modeling languages like JuMP. DiffOpt offers both forward and reverse differentiation modes, enabling multiple use cases from hyperparameter optimization to backpropagation and sensitivity analysis, bridging constrained optimization with end-to-end differentiable programming. DiffOpt is built on two known rules for differentiating quadratic programming and conic programming standard forms. However, thanks ability to differentiate through model transformation, the user is not limited to these forms and can differentiate with respect to the parameters of any model that can be reformulated into these standard forms. This notably includes programs mixing affine conic constraints and convex quadratic constraints or objective function

    A Bilevel Approach to Optimal Price-Setting of Time-and-Level-of-Use Tariffs

    Get PDF
    Time-and-Level-of-Use (TLOU) is a recently proposed pricing policy for energy, extending Time-of-Use with the addition of a capacity that users can book for a given time frame, reducing their expected energy cost if they respect this self-determined capacity limit. We introduce a variant of the TLOU defined in the literature, aligned with the supplier interest to prevent unplanned over-consumption. The optimal price-setting problem of TLOU is defined as a bilevel, bi-objective problem anticipating user choices in the supplier decision. An efficient resolution scheme is developed, based on the specific discrete structure of the lower-level user problem. Computational experiments using consumption distributions estimated from historical data illustrate the effectiveness of the proposed framework

    Complexity of near-optimal robust versions of multilevel optimization problems

    Get PDF
    Near-optimality robustness extends multilevel optimization with a limited deviation of a lower level from its optimal solution, anticipated by higher levels. We analyze the complexity of near-optimal robust multilevel problems, where near-optimal robustness is modelled through additional adversarial decisionmakers. Near-optimal robust versions of multilevel problems are shown to remain in the same complexity class as the problem without near-optimality robustness under general conditions

    Scylla: a matrix-free fix-propagate-and-project heuristic for mixed-integer optimization

    Full text link
    We introduce Scylla, a primal heuristic for mixed-integer optimization problems. It exploits approximate solves of the Linear Programming relaxations through the matrix-free Primal-Dual Hybrid Gradient algorithm with specialized termination criteria, and derives integer-feasible solutions via fix-and-propagate procedures and feasibility-pump-like updates to the objective function. Computational experiments show that the method is particularly suited to instances with hard linear relaxations
    corecore